package com.alibaba.cloud.encry;

import java.math.BigInteger;
import java.security.MessageDigest;


/**
 * The Class SHA.
 *
 * @ClassName: SHA
 * @Description:SHA(Secure Hash Algorithm，安全散列算法），数字签名等密码学应用中重要的工具，
 * 被广泛地应用于电子商务等信息安全领域。虽然，SHA与MD通过碰撞法都被破解了，
 * 但是SHA仍然是公认的安全加密算法，较之MD更为安全
 * @author: zhb zhb1316783262@163.com
 * @date: 2018年3月13日 上午11:06:26
 */
public class SHA {
    
    /** The Constant KEY_SHA. */
    public static final String KEY_SHA = "SHA";

    /**
     * Gets the result.
     *
     * @param inputStr the input str
     * @return the result
     */
    public static String getResult(String inputStr) {
        BigInteger sha = null;
        byte[] inputData = inputStr.getBytes();
        try {
            MessageDigest messageDigest = MessageDigest.getInstance(KEY_SHA);
            messageDigest.update(inputData);
            sha = new BigInteger(messageDigest.digest());
        } catch (Exception e) {
            e.printStackTrace();
        }
        return sha.toString();
    }
}